package com.zrkizzy.seckill.enums;

import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 * 公共返回对象枚举
 *
 * @author zhangrongkang
 * @since 2023/3/21
 */
@Getter
@AllArgsConstructor
public enum HttpStatusEnum {

    /**
     * 通用状态码
     */
    SUCCESS(200, "操作成功"),
    ERROR(500, "服务端异常"),

    /**
     * 登录模块5002xx
     */
    LOGIN_ERROR(500211, "用户名或者密码错误"),
    MOBILE_ERROR(500212, "手机号码格式错误"),
    USER_EXIST_ERROR(500213, "用户未登录"),
    REPEAT_LOGIN_ERROR(500214, "您已登录，无需重复登录"),
    KAPTCHA_ERROR(500215, "验证码错误，请重新输入"),

    /**
     * 订单模块5003xx
     */
    ORDER_NOT_EXIST(500301, "订单不存在"),

    /**
     * 秒杀模块5005xx
     */
    EMPTY_STOCK(500500, "当前商品库存不足"),
    ORDER_ERROR(500501, "该商品您已经秒杀过，每人限购一件"),

    /**
     * 系统模块5006xx
     */
    REQUEST_ILLEGAL(500601, "非法请求，请重新尝试"),
    ACCESS_LIMIT(500602, "请求过于频繁，请稍后重试");

    /**
     * 状态码
     */
    private final Integer code;

    /**
     * 状态描述
     */
    private final String message;
}
